The present invention relates to notch filters and more specifically to a method and apparatus for tuning a notch filter to reduce torsional oscillations within a dual inertia system such as a motor and load which are mechanically linked.
For the purposes of this explanation, when referring to the drawings, an "m" subscript indicates a property or signal relating to a motor, an "I" subscript indicates a property or signal related to a load, an "n" subscript indicates a signal related to the notch filter, an "s" subscript indicates that a signal relates to a system, an "f" subscript denotes a feedback signal, an "*" denotes a command signal and an "e" subscript denotes an error signal.
Almost all motor/load systems exhibit some degree of oscillation between the motor and load when motor speed is modified or load characteristics are modified. For example, motor/load oscillation is common where a motor is coupled to a rolling mill drive, a paper machine or a machining center. Oscillations occur because of the elastic nature of couplings, gears and spindles along the drive train between the motor and linked load.
To control motor operation (e.g. speed, torque, response time, etc.), most motors are equipped with a controller which receives command signals and drives the motor and load as a function of the command signals. For example, often a velocity command signal is provided indicating a desired motor/load velocity. To maintain the desired velocity most controllers include a feedback loop which senses actual motor rotor velocity, compares the actual and command velocities and modifies command signals to eliminate any difference between the actual and command velocities.
When a torque is generated by the motor which is intended to change load position, for example, to increase rotational speed, the torque is transmitted via the drive train to the load. However, because load inertia resists speed change, as the rotor angle changes to increase load torque, the load lags the rotor and the difference between the rotor and load angle twists the drive train storing energy therein.
The rotor eventually reaches the command speed while the load still lags. Eventually the drive train distresses and imparts its stored energy to the load. This distressing can accelerate the load to a speed higher than the intended speed. The load in turn restresses the drive train in the opposite direction and provides a force to the rotor tending to further increase rotor speed to a speed which exceeds the command speed.
When the rotor speed exceeds the command speed, the feedback loop again generates an error signal. In response to the error signal the controller again modifies the command signal, this time to slow down the motor/load system. Again, when the motor speed changes the rotor leads the load and energy is stored in the twisting of the drive train. Upon distressing, the drive train again imparts a slinging force to the load thereby causing the load to undershoot the command speed. The load in turn restresses the drive train in the opposite direction providing a force to the rotor tending to decrease rotor speed to a speed which is less than the command speed.
If this pattern of twisting to store energy and distressing continues incessant motor/load oscillation can occur at what is commonly referred to as a resonant system frequency. In addition to stored stress within the drive train, another common source of motor/load oscillation is system gear backlash. Moreover, uncontrolled load disturbances, system parameter variations (e.g. resistance/inductance changes due to heating, etc.), actuator saturation and unmeasured states also contribute to oscillations.
In addition to causing unstable and poor control performance, oscillations in the mechanical drive train linkages can lead to metal fatigue and eventually disastrous effects in the system.
In an effort to reduce the effects of resonance in a dual energy system such as a motor/load, the industry has developed several different techniques. For example, some techniques utilize a lead-lag filter in the feedback velocity loop or in a feed-forward leg of the controller to dampen vibrations up to and around a maximum velocity loop bandwidth.
Referring to FIG. 1, exemplary motor and load velocity responses, .omega..sub.m and .omega..sub.l, respectively, to a step input command signal .omega.* provided to a typical controller/motor configuration wherein the controller includes a lead/lag filter is illustrated. The lead portion of the lead-lag filter is designed to improve the rise time of responses .omega..sub.m and .omega..sub.l, at the expense of a higher natural frequency while the lag portion of the lead-lag filter is designed to improve response overshoot and relative stability at the expense of a longer risetime.
In FIG. 1, at time t1 when command velocity signal .omega.* is stepped, motor velocity response .omega..sub.l instantaneously increases and load response .omega..sub.m lags slightly behind. A short time after time t1, response .omega..sub.m is high and therefore the lag filter decreases motor velocity. A short time thereafter, response .omega..sub.m is low to improve overshoot and therefore the lead filter increases motor velocity. Each time response .omega..sub.m changes from lead to lag or vice versa, response .omega..sub.l lags there behind. The overall result using the lead-lag filter is less overshoot, faster rise time and better overall stability.
Lead-lag filters not only damp at the resonant frequency but also damp at other frequencies which, for optimal system response, should not be damped.
Other systems employ a notch filter instead of a lead-lag filter for minimizing oscillation and improving overall system response. To this end, it has been recognized in the controls art that many systems, including dual inertia systems, have transfer functions which contain a pair of complex-conjugate system poles. The system poles often make it extremely difficult to control these systems, especially if the poles are very close to the imaginary axis of a root-loci s-plane, as is the case in a dual inertia system. In effect, the system poles in a dual inertia system cause instability which in turn results in undesired oscillation.
The notch filter has a transfer function which includes notch zeros and poles. Notch zeros are chosen such that they essentially cancel system poles. In addition, notch poles are chosen to be more stable than the original system poles. Specifically, the notch transfer function is typically chosen such that the notch poles are identical and real with a damping term R which is equal to 2.0 (see Equation 1 below). It has been known for a long time that by selecting factor R=2.0, a system response which is acceptable for most applications occurs.
Referring to FIG. 2, a load velocity response .omega..sub.l ' to a step input command signal .omega.* at time t1 using a system including a notch filter is illustrated. Comparing response .omega..sub.l from FIG. 1 to response .omega..sub.l ' from FIG. 2, clearly response .omega..sub.l ' using the notch filter is better than the response .omega..sub.l using a lead-lag filter. Nevertheless, high frequency oscillation still occurs in response .omega..sub.l ' which, for some applications, is unacceptable.
Another technique to damp load resonance is to measure load velocity and provide a load velocity feedback loop for comparison to the reference speed signal. Unfortunately load velocity and/or load position signals (which could be used to determine load velocity) are usually not available for measurement. While a load velocity sensor could be provided, because many different sensor configurations would likely have to be accommodated such a versatile system would be relatively expensive.
Instead of a versatile sensor an observer mechanism could be provided to estimate load velocity and a damping loop could be closed around the observer signal. While such a system would be feasible, observer systems are not practical as they require a large amount of system information during configuration. Required information usually includes information about system dynamics, system structure and system parameters, some of which is difficult to determine.
As each of the previous solutions to minimizing oscillation between the components of a dual inertia system has one or more shortcomings, it would be advantageous to have a system which could essentially eliminate oscillation between the components of a dual inertia system which is easy and relatively inexpensive to implement.